/**
 * @author Linrui
 * @since 2011-03-15
 * 类别的业务层封装类接口
 */
package com.qeado.sort.service;

import java.util.List;

import com.qeado.sort.model.Sort;
import com.qeado.util.PageHelper;

public interface SortService {
	/**
	 *  查询操作
	 **/
	public PageHelper listByPage(int pageNum); // 分页查询所有的类别
	public PageHelper listByPcodeByPage(int pageNum, String Pcode); // 分页查询指定父类的下一级子类别
	public PageHelper listByPidByPage(int pageNum, String Pid); // 分页按父类别查询下一级子类别
	public List<Sort> listByPcode(String Pcode); // 根据父类code , 查询下一级所有之类别
	public List<Sort> listByPid(String pid); // 根据父类id , 查询下一级所有之类别
	public List<Sort> listByTreeByPid(String Pid); // 按父节点ID查询类别，一次查询出一个树形结构
	public List<Sort> listByTreeByCode(String typeCode); // 按父节点typeCode查询，一次查询出一个树形结构
	public List<Sort> listTopCategory(); // 查询所有商品一级类别
	public Sort queryById(String id); // 按ID查询类别
	public Sort queryByCode(String typeCode); // 按typeCode查询类别
	public PageHelper queryByName(int pageNum,String typeName); // 按名称查询类别，分页
	public boolean isChildNode(String sortID); // 判断某个类别是否叶子节点
	
	public List<Sort> listLeafSortByPid(String sortID); // 查询某个类别的子类别中的所有为叶子节点的类别
	public List<Sort> listLeafSortByPcode(String typeCode); // 查询某个类别的子类别中的所有为叶子节点的类别 （如果有ID又有code，建议用ID查）
	
	public List<Sort> listAllProdSort(); // 查询所有的产品的类别
	
	public String getNameByCode(String typeCode); // 根据code 查询name
}
